home *** CD-ROM | disk | FTP | other *** search
/ Champak 43 / Vol 43.iso / games / phit.swf / scripts / __Packages / CPieceShuffler.as < prev    next >
Encoding:
Text File  |  2007-07-13  |  1.0 KB  |  37 lines

  1. class CPieceShuffler
  2. {
  3.    function CPieceShuffler()
  4.    {
  5.    }
  6.    function Shuffle(extentX, trayExtentY, tableauExtentY, pieceHost, nPieces, maxStep, maxIterations, upBias)
  7.    {
  8.       var _loc2_ = 0;
  9.       while(_loc2_ < maxIterations)
  10.       {
  11.          this.ShuffleSingleIteration(extentX,trayExtentY,tableauExtentY,pieceHost,nPieces,maxStep,upBias);
  12.          _loc2_ = _loc2_ + 1;
  13.       }
  14.    }
  15.    function ComparePiecesRandomly(a, b)
  16.    {
  17.       return !_root.random.GetBoolean() ? 1 : -1;
  18.    }
  19.    function ShuffleSingleIteration(extentX, trayExtentY, tableauExtentY, pieceHost, nPieces, maxStep, upBias)
  20.    {
  21.       var _loc3_ = new Array();
  22.       var _loc2_ = 0;
  23.       while(_loc2_ < nPieces)
  24.       {
  25.          _loc3_[_loc2_] = pieceHost["piece" + _loc2_];
  26.          _loc2_ = _loc2_ + 1;
  27.       }
  28.       _loc3_.sort(this.ComparePiecesRandomly);
  29.       _loc2_ = 0;
  30.       while(_loc2_ < nPieces)
  31.       {
  32.          _loc3_[_loc2_].SlideRandomly(1,maxStep,upBias);
  33.          _loc2_ = _loc2_ + 1;
  34.       }
  35.    }
  36. }
  37.